package com.wzdigit.wms.basic.domain.dtos.basic;

import com.baomidou.mybatisplus.annotation.*;
import com.wzdigit.framework.orm.model.BasicDomain;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;

import java.math.BigDecimal;

/**
 * 货品
 * @author yangdongjie
 * @Sku.java
 * @2021年1月20日下午4:52:59
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName("WMS_SKU")
@KeySequence(value = "WMS_SKU_SEQ", clazz = Integer.class)
public class SkuDto extends BasicDomain {

	private static final long serialVersionUID = -8199850079203867492L;

	@TableId(value = "SKU_ID", type = IdType.INPUT)
	private Integer skuId;

	/**
	 * 货品代码
	 */
	@TableField("SKU_CODE")
    private String skuCode;

	/**
	 * 货主，客户主数据中 客户类型=货主，取客户ID
	 */
	@TableField("OWNER")
    private Integer owner;


	/**
	 * 货品类别ID
	 */
	@TableField("SKU_CATE_ID")
    private Integer skuCateId;

	/**
	 * 货品短码
	 */
	@TableField("SHORT_CODE")
    private String shortCode;

	/**
	 * 货品中文描述
	 */
	@TableField("DESC_CN")
    private String descCn;

	/**
	 * 货品英文描述
	 */
	@TableField("DESC_EN")
    private String descEn;

	/**
	 * 规格
	 */
	@TableField("SPEC")
    private String spec;

	/**
	 * 产品型号
	 */
	@TableField("MODEL")
    private String model;

	/**
	 * 商品码
	 */
	@TableField("COMMODITY_CODE")
    private String commodityCode;

	/**
	 * 外部物料组
	 */
	@TableField("MAT_GROUP")
    private String matGroup;

	/**
	 * 基本计量单位
	 */
	@TableField("EXT_MAT_GROUP")
    private String extMatGroup;

	/**
	 * 采购订单计量单位
	 */
	@TableField("BASE_UNIT")
    private String baseUnit;

	/**
	 * 单位组ID
	 */
	@TableField("PO_UNIT")
    private String poUnit;

	/**
	 * 重量单位
	 */
	@TableField("UNIT_GROUP_ID")
    private Integer unitGroupId;

	/**
	 * 体积单位
	 */
	@TableField("WEIGHT_UNIT")
    private String weightUnit;

	/**
	 * 毛重
	 */
	@TableField("CUBE_UNIT")
    private String cubeUnit;

	/**
	 * 净重
	 */
	@TableField("GROSS_WEIGHT")
    private BigDecimal grossWeight;

	/**
	 * 皮重
	 */
	@TableField("TARE")
    private BigDecimal tare;

	/**
	 * 净重
	 */
	@TableField("NET_WEIGHT")
    private BigDecimal netWeight;

	/**
	 * 长
	 */
	@TableField("LENGTH")
    private BigDecimal length;

	/**
	 * 宽
	 */
	@TableField("WIDTH")
    private BigDecimal width;

	/**
	 * 高
	 */
	@TableField("HEIGHT")
    private BigDecimal height;

	/**
	 * 体积
	 */
	@TableField("CUBE")
    private BigDecimal cube;

	/**
	 * 价格
	 */
	@TableField("PRICE")
    private BigDecimal price;

	/**
	 * 有效期
	 */
	@TableField("VALIDITY_PERIOD")
    private Integer validityPeriod;

	/**
	 * 湿敏等级
	 */
	@TableField("MSL")
    private String msl;

	/**
	 * 特殊采购
	 */
	@TableField("SPECIAL_PURCHASE")
    private String specialPurchase;

	/**
	 * KeyPart类型
	 */
	@TableField("KEY_PART_TYPE")
    private String keyPartType;

	/**
	 * 最小标包
	 */
	@TableField("STD_PKG_QTY")
    private BigDecimal stdPkgQty;

	/**
	 * 条码管控类型：枚举类型：单品、批次
	 */
	@TableField("BARCODE_CONTROL")
    private Integer barcodeControl;

	/**
	 * 条码解析方式：枚举类型：序号范围解析，条码解析
	 */
	@TableField("BARCODE_PARSER")
    private Integer barcodeParser;

	/**
	 * OEM物品
	 */
	@TableField("IS_OEM")
    private Integer isOem;

	/**
	 * 默认供应商ID
	 */
	@TableField("DEFAULT_VENDOR_ID")
    private Integer defaultVendorId;

	/**
	 * 别名
	 */
	@TableField("ALTERNATE_SKU1")
    private String alternateSku1;

	/**
	 * 别名
	 */
	@TableField("ALTERNATE_SKU2")
    private String alternateSku2;

	/**
	 * 别名
	 */
	@TableField("ALTERNATE_SKU3")
    private String alternateSku3;

	/**
	 * 别名
	 */
	@TableField("ALTERNATE_SKU4")
    private String alternateSku4;

	/**
	 * 别名
	 */
	@TableField("ALTERNATE_SKU5")
    private String alternateSku5;

	/**
	 * 产品组
	 */
	@TableField("SKU_GROUP1")
    private String skuGroup1;

	/**
	 * 产品组
	 */
	@TableField("SKU_GROUP2")
    private String skuGroup2;

	/**
	 * 产品组
	 */
	@TableField("SKU_GROUP3")
    private String skuGroup3;

	/**
	 * 产品组
	 */
	@TableField("SKU_GROUP4")
    private String skuGroup4;

	/**
	 * 产品组
	 */
	@TableField("SKU_GROUP5")
    private String skuGroup5;

	/**
	 * 产品组
	 */
	@TableField("SKU_GROUP6")
    private String skuGroup6;

	/**
	 * 产品组
	 */
	@TableField("SKU_GROUP7")
    private String skuGroup7;

	/**
	 * 产品组
	 */
	@TableField("SKU_GROUP8")
    private String skuGroup8;

	/**
	 * 产品组
	 */
	@TableField("SKU_GROUP9")
    private String skuGroup9;

	/**
	 * 来源方式  ERP同步/手动导入
	 */
	@TableField("DATA_SOURCE")
    private String dataSource;

	/**
	 * 是否启用
	 */
	@TableField("IS_ENABLED")
    private Integer isEnabled;

	/**
	 * 备注
	 */
	@TableField("COMMENTS")
    private String comments;

	/**
	 * 用户自定义字段1（货品类别名称-输出）
	 */
	@TableField("UDF1")
    private String udf1;

	/**
	 * 用户自定义字段2（单位组名称-输出）
	 */
	@TableField("UDF2")
    private String udf2;

	/**
	 * 用户自定义字段3（默认供应商名称-输出）
	 */
	@TableField("UDF3")
    private String udf3;

	/**
	 * 用户自定义字段4（条码管控类型：单品、批次）
	 */
	@TableField("UDF4")
    private String udf4;

	/**
	 * 用户自定义字段5（条码解析方式：序号范围解析，条码解析）
	 */
	@TableField("UDF5")
    private String udf5;


	/**
	 * 客户名称
	 */
	private String customerName;

}